// SPDX-FileCopyrightText: 2011 - 2024 NVIDIA CORPORATION. All Rights Reserved.
//
// SPDX-License-Identifier: BSD-3-Clause

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;

//version without explicit conversion doesn't compile with g++:
//template struct ReceiverVisitor<amgx::TemplateConfig<1, 0, 0, 4>, amgx::Vector<amgx::TemplateConfig<1, 2, 0, 4> >, amgx::Vector<amgx::TemplateConfig<0, 2, 0, 4> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;

template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;


//More:
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDouble, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matFloat, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matDoubleComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)9, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecInt, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDoubleComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecFloat, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SynchronizerVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct ReceiverVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
template struct SenderVisitor<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecComplex, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt>, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> >, class amgx::Vector<struct amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)AMGX_vecDouble, (AMGX_MatPrecision)AMGX_matComplex, (AMGX_IndPrecision)AMGX_indInt> > >;
